Preemption-resistant control on a non-real-time operating system
نویسندگان
چکیده
We propose an architecture for implementing discrete-time control algorithms on a non-real-time operating system so that sensing and actuation occur at precise times, even if the OS preempts the control task. The architecture has the controller perform its computation on one processor and its sensing/actuation on a separate microcontroller. The controller sends arrays of future time-stamped actuator commands to the microcontroller, thereby allowing actuation to continue if preemption occurs. We use this architecture to drive a DC motor with a Beaglebone Black single-board computer, with the controller running on Linux and the I/O performed on a subsidiary microcontroller within the Beaglebone. This scheme achieves a timing accuracy of 40 μs. We demonstrate that this configuration improves a PID controller’s performance in the presence of OS preemption, even when the preemption persists across several sampling periods. In effect, this provides a mechanism to make a controller resistant to OS preemption.
منابع مشابه
Extending RTAI/Linux with Fixed-Priority Scheduling with Deferred Preemption
Fixed-Priority Scheduling with Deferred Preemption (FPDS) is a middle ground between Fixed-Priority Preemptive Scheduling and Fixed-Priority Non-preemptive Scheduling, and offers advantages with respect to context switch overhead and resource access control. In this paper we present our work on extending the realtime operating system RTAI/Linux with support for FPDS. We give an overview of poss...
متن کاملOSPERT 2009 : International Workshop on Operating Systems
Fixed-Priority Scheduling with Deferred Preemption (FPDS) is a middle ground between Fixed-Priority Preemptive Scheduling and Fixed-Priority Non-preemptive Scheduling, and offers advantages with respect to context switch overhead and resource access control. In this paper we present our work on extending the realtime operating system RTAI/Linux with support for FPDS. We give an overview of poss...
متن کاملDynamic Ticking : the Practical Implementation Method for the Real-time Task Scheduling
In this paper a new method dynamic ticking is proposed to control tasks more e ciently on real time operating systems It makes higher priority tasks run more e ciently by preventing useless occurrences of the timer interrupt request Operation of dynamic ticking is presented and several issues are discussed to be adopted at previous systems To estimate the performance the schedulability is analy...
متن کاملScheduling Analysis with Respect to Hardware Related Preemption Delay
Proofing that all deadlines are met is one of the essential tasks in the development of real-time systems. One method to provide this proof is the response time analysis. Unfortunately state of the art processors and the corresponding real-time operating systems not only incur non negligible task switching times, but also the execution time of the preempted task itself is prolonged due to the b...
متن کاملScheduling Fixed-Priority Tasks with Preemption Threshold
While it is widely believed that preemptability is a necessary requirement for developing real-time software, there are additional costs involved with preemptive scheduling, as compared to non-preemptive scheduling. Furthermore, in the context of fixed-priority scheduling, feasibility of a task set with nonpreemptive scheduling does not imply feasibility with preemptive scheduling (and vice-ver...
متن کامل